package com.example.blog.service;

import com.example.blog.dto.SystemSettingDTO;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import java.util.List;
import java.util.Map;

public interface SystemSettingService {
    SystemSettingDTO createSetting(SystemSettingDTO settingDTO);
    SystemSettingDTO updateSetting(String key, SystemSettingDTO settingDTO);
    void deleteSetting(String key);
    SystemSettingDTO getSettingByKey(String key);
    List<SystemSettingDTO> getPublicSettings();
    Page<SystemSettingDTO> getSettingsByCategory(String category, Pageable pageable);
    Page<SystemSettingDTO> getAllSettings(Pageable pageable);
    Map<String, String> getPublicSettingsMap();
    void initializeDefaultSettings();
} 
